<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <!-- 过滤器常用来处理文本格式化的操作。过滤器可以用在两个地方：双花括号插值和v-bind表达式 -->
    <div id="app">
        <ul>
            <li v-for="user in userList">
                {{user.id}} === {{user.name}} === {{user.gender == 1 ? "男" : "女"}}
                ===> {{user.gender | gFilter}} ===> {{user.gender | genderFilter}}
            </li>
        </ul>
    </div>

    <script src="../node_modules/vue/dist/vue.js"></script>
    <script>
        Vue.filter("gFilter", function(val) {
            if (val == 1) {
                return "男~~~";
            } else {
                return "女~~~";
            }
        });

        let vm = new Vue({
            el: "#app",
            data: {
                userList: [
                    {id: 1, name: 'Jack', gender: 1},
                    {id: 2, name: 'Mary', gender: 0}
                ]
            },
            filters: {
                // filters定义局部过滤器，只可以在当前实例中使用
                genderFilter(val) {
                    if (val == 1) {
                        return "男";
                    } else {
                        return "女";
                    }
                }
            }
        })
    </script>
</body>
</html>